input capture